home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1999 March / EnigmA AMIGA RUN 35 (1999)(G.R. Edizioni)(IT)[!][issue 1999-03].iso / earcd / devel / vbcc-wos-src / vlink / amigahunks.h next >
Text File  |  1999-01-01  |  3KB  |  86 lines

  1. /* $VER: vlink amigahunks.h V0.1  (04.12.97)
  2.  *
  3.  * This file is part of vlink, a portable linker for multiple
  4.  * object formats.
  5.  * Copyright (c) 1997-99  Frank Wille
  6.  *
  7.  * vlink is freeware and part of the portable and retargetable ANSI C
  8.  * compiler vbcc, copyright (c) 1995-99 by Volker Barthelmann.
  9.  * vlink may be freely redistributed as long as no modifications are
  10.  * made and nothing is charged for it. Non-commercial usage is allowed
  11.  * without any restrictions.
  12.  * EVERY PRODUCT OR PROGRAM DERIVED DIRECTLY FROM MY SOURCE MAY NOT BE
  13.  * SOLD COMMERCIALLY WITHOUT PERMISSION FROM THE AUTHOR.
  14.  *
  15.  *
  16.  * v0.1  (27.02.98) phx
  17.  *       First version that seems to link AmigaOS ADOS and EHF
  18.  *       objects and libraries. Many common features, like linking
  19.  *       sections together which have relative references, are
  20.  *       still missing. Also, PowerPC-ELF32 support is about to come.
  21.  * v0.0  (04.12.97) phx
  22.  *       File created.
  23.  */
  24.  
  25.  
  26. /* hunk types */
  27. #define HUNK_UNIT       999
  28. #define HUNK_NAME       1000
  29. #define HUNK_CODE       1001
  30. #define HUNK_DATA       1002
  31. #define HUNK_BSS        1003
  32. #define HUNK_RELOC32    1004
  33. #define HUNK_ABSRELOC32    HUNK_RELOC32
  34. #define HUNK_RELOC16    1005
  35. #define HUNK_RELRELOC16 HUNK_RELOC16
  36. #define HUNK_RELOC8     1006
  37. #define HUNK_RELRELOC8  HUNK_RELOC8
  38. #define HUNK_EXT        1007
  39. #define HUNK_SYMBOL     1008
  40. #define HUNK_DEBUG      1009
  41. #define HUNK_END        1010
  42. #define HUNK_HEADER     1011
  43. #define HUNK_OVERLAY    1013
  44. #define HUNK_BREAK      1014
  45. #define HUNK_DREL32     1015
  46. #define HUNK_DREL16     1016
  47. #define HUNK_DREL8      1017
  48. #define HUNK_LIB        1018
  49. #define HUNK_INDEX      1019
  50. #define HUNK_RELOC32SHORT 1020
  51. #define HUNK_RELRELOC32 1021
  52. #define HUNK_ABSRELOC16 1022
  53. /* EHF extensions */
  54. #define HUNK_PPC_CODE   1257
  55. #define HUNK_RELRELOC26 1260
  56.  
  57. #define HUNKB_ADVISORY  29
  58. #define HUNKB_CHIP      30
  59. #define HUNKB_FAST      31
  60. #define HUNKF_ADVISORY  (1L<<29)
  61. #define HUNKF_CHIP      (1L<<30)
  62. #define HUNKF_FAST      (1L<<31)
  63.  
  64. /* hunk_ext sub-types */
  65. #define EXT_SYMB        0
  66. #define EXT_DEF         1
  67. #define EXT_ABS         2
  68. #define EXT_RES         3
  69. #define EXT_REF32       129
  70. #define EXT_ABSREF32    EXT_REF32
  71. #define EXT_COMMON      130
  72. #define EXT_ABSCOMMON   EXT_COMMON
  73. #define EXT_REF16       131
  74. #define EXT_RELREF16    EXT_REF16
  75. #define EXT_REF8        132
  76. #define EXT_RELREF8     EXT_REF8
  77. #define EXT_DEXT32      133
  78. #define EXT_DEXT16      134
  79. #define EXT_DEXT8       135
  80. #define EXT_RELREF32    136
  81. #define EXT_RELCOMMON   137
  82. #define EXT_ABSREF16    138
  83. #define EXT_ABSREF8     139
  84. /* EHF extensions */
  85. #define EXT_RELREF26    229
  86.